In the event of technical difficulties with Szkopuł, please contact us via email at [email protected].
If you would like to talk about tasks, solutions or technical problems, please visit our Discord servers. They are moderated by the community, but members of the support team are also active there.
Rozważmy zbiór składający się z
domkniętych (zawierających końce)
pionowych odcinków na płaszczyźnie.
Żadne dwa odcinki ze zbioru
nie mają
wspólnych punktów.
Mówimy, że dwa odcinki z
się widzą, jeżeli istnieje poziomy
odcinek, który je łączy i nie ma punktów wspólnych z żadnymi innymi
odcinkami ze zbioru
.
Na poniższym rysunku znajduje się przykładowy zbiór odcinków. Pary widzących się odcinków to: 1-2, 1-3, 2-3, 1-5 i 4-5. Odcinki 1 i 4 się nie widzą.
Dla danej liczby , poszukujemy
-elementowego zbioru pionowych
odcinków, w którym jak najwięcej par odcinków się widzi.
Napisz program, który:
Pierwszy i jedyny wiersz wejścia zawiera jedną liczbę całkowitą
(
) - liczbę odcinków w poszukiwanym zbiorze.
Pierwszy wiersz wyjścia powinien zawierać jedną liczbę całkowitą -
maksymalną liczbę par widzących się odcinków.
Kolejnych wierszy powinno opisywać odpowiednie rozmieszczenie
odcinków - po jednym odcinku w wierszu.
Wiersz
-szy (dla
) powinien zawierać trzy
liczby całkowite:
,
i
(
,
),
pooddzielane pojedynczymi odstępami i opisujące
odcinek o końcach
i
.
Jeżeli istnieje wiele poprawnych rozmieszczeń odcinków, to Twój
program może wypisać dowolne z nich.
Dla danych wejściowych:
4poprawną odpowiedzią jest:
6 1 1 5 2 2 4 3 3 5 4 1 4
Autor zadania: Jakub Radoszewski.